The statements in this section merely provide background information related to the present disclosure and may not constitute prior art.
When IP networks become a dominant network of telecommunication operators, services based on IP network are in great need. Initially, in order to provide the services based on IP network for an enterprise, telecommunication operators provide a layer 2 link for the enterprise by leasing private lines, however, this approach requires more construction time and high cost while making the sharing and management difficult. Later, with the development of asynchronous transfer mode (ATM) and frame relay technology, telecommunication operators provide a point-to-point layer 2 connection for a customer by virtual circuit mode, and the customer can construct its own layer 3 network on the layer 2 connection for carrying data stream of IP, IPX etc. Compared with the private line leasing mode, the virtual circuit mode has advantages of consuming less time and low cost, but in order to provide virtual private network (VPN) service and Internet service in different types of networks (e.g., ATM, frame relay), the operator needs to construct and maintain two individual networks, thus leading to high cost; and, the speed of the virtual circuit mode is slow; furthermore, the configuration of the virtual circuit mode is still complex, especially when a station needs to be added, the administrator is required to do lots of configuration work.
In order to solve the existing considerations in the above private line leasing mode and virtual circuit mode, multi-protocol label switching layer 2 virtual private network (MPLS L2VPN) technology emerges. The technology can provide IP service and layer 2 VPN service in a same network simultaneously. It also has the features of setting arbitrary speed conveniently and configuring easily. By utilizing this technology, the operator can manage and operate one network to provide many services such as IP service, layer 3 VPN, layer 2 VPN, traffic engineering and differentiated services simultaneously, so as to reduce a lot of costs of construction, maintenance, and operation. MPLS L2VPN service is more and more popular with the enterprises which can manage by themselves the route construction of their own networks or those who do not want to expose its network planning to the operator.
MPLS L2VPN includes virtual private LAN service (VPLS) and virtual leased line (VLL). The VPLS is one type of layer 2 VPN, and MPLS VPLS technology transparently transfers Ethernet data of a subscriber in a MPLS network. In view of the subscriber, the MPLS network applying MPLS VPLS technology is a layer 2 switching network, through which an Ethernet-based layer 2 connection may be established between different subscriber stations.
There are two primary drafts in the current VPLS: draft-ietf-l2vpn-vpls-bgp-XX and draft-ietf-l2vpn-vpls-ldp-XX. The draft draft-ietf-l2vpn-vpls-ldp-XX defines a solution of establishing virtual circuit by border gateway protocol (BGP), and then implementing VPLS, i.e., VPLS in VPLS BGP mode. In the solution, each provider edge router (PE) participating in providing VPLS service in core network establishes full connections with all other PEs, sends a multi-protocol reachablility/unreachablility network layer information message including VPLS station information to the other PEs via BGP, performs parameter negotiating, and establishes and releases virtual circuits between VPLS stations, so as to connect every VPLS station together to construct VPLS network.
In the solution of VPLS in VPLS BGP mode, the PE determines whether to send the multi-protocol reachablility/unreachablility network layer information message including the VPLS station information to other PEs according to a status of access circuit (AC). The virtual circuits between the VPLS stations are bidirectional. The disadvantage of the above solution of VPLS in VPLS BGP mode is that the solution may cause status inconsistency of the corresponding VPLS virtual circuits between PEs.
The rules for establishing virtual circuits in the current VPLS BGP are: after a VPLS station is configured in a PE participating in providing VPLS service, the PE sends a network layer reachability information (NLRI) message including information of the local VPLS station to other PEs in the network. The basic unit of the NLRI message is label block, each label of which represents a virtual circuit from the PE to a VPLS station on another PE.
In the networking shown in FIG. 1, it is assumed that three CE devices connected with respective PEs belong to a same VPLS network X. The PE1 is configured with a VPLS station whose identifier is M, with the offset of a label block generated by the PE1 being VBO, the size of the label block being VBS, and the label base value being LB. The PE2 is also configured with a VPLS station whose identifier is N.
After the PE2 receives an NLRI message sent by the PE1, the PE2 performs the processes as follows:
Determining whether the condition VBO≦N<VBO+VBS is satisfied or not. If the condition VBO≦N<VBO+VBS is satisfied, the station N belongs to a remote VPLS station set of the PE1, and then the PE2 establishes a virtual circuit to the PE1. The label from the PE2 to the PE1 is: LB+N−VBO; if the condition VBO≦N<VBO+VBS is not satisfied, the PE2 ignores the NLRI message, and does not establish a virtual circuit to the PE1.
In the same way, after the PE1 receives an NLRI message sent by the PE2, the PE1 performs the same processes. If the station M also belongs to a remote VPLS station set of the PE2, it is supposed that the offset of a label block generated by the PE2 is VBO′, the size of the label block is VBS′, and the label base value is LB′, then the PE1 may establish a virtual circuit from the PE1 to the PE2. The label from the PE1 to the PE2 is: LB′+M−VBO′.
All the PEs are in the same autonomous system and each PE belongs to the same VPLS VPN, with the tunnels between the PEs being fully connected. According to VPLS BGP protocol, after the PE1, PE2, and PE3 transfer NLRI messages including local VPLS station information to one another, virtual circuits are established between every two of the three PEs through parameter negotiation.
If for some reason (e.g., the interface of the PE1 does not enable LDP protocol), the tunnel from the PE1 to the PE2 does not exist but the tunnel from the PE2 to the PE1 still exists, then the PE1 obtains that the tunnel from itself to the PE2 does not exist and sets the status of the virtual circuit from the PE1 to the PE2 as DOWN (unavailable), and delete the related VPLS forwarding entries to the PE2.
However, the PE1 can not send an NLRI message indicating unreachability to the PE2 at this time, because there is BGP neighborship from the PE1 to the PE2 and the PE3, and if the PE1 sends the NLRI message indicating unreachability to the PE2, then the PE3 also receives the NLRI message indicating unreachability and both the PE3 and the PE2 release the virtual circuits to the PE1, to cause the virtual circuit between the PE3 and the PE1 to be also released. Because the PE1 can not send an NLRI message indicating unreachability to the PE2, the PE2 still deems that the virtual circuit from itself to the PE1 is UP (available), resulting in the condition of the inconsistency of the corresponding virtual circuit status of the PE2 and the PE1. In the above condition of the inconsistency, because the PE1 does not have the VPLS forwarding entries to the PE2, the PE1 only sends broadcast data, multicast data, and unknown unicast data sent from Customer Edge (CE) 1 to the PE3; and the PE2 makes two copies of broadcast data, multicast data, and unknown unicast data sent from CE2, which will be sent to the PE1 and the PE3. When there are a lot of VPLS stations configured on the PE2, those useless data sent to the PE1 will aggravate the burdens of the routers and the whole network.